minus(minus(x, y), z) → minus(x, plus(y, z))
minus(0, y) → 0
minus(x, 0) → x
minus(s(x), s(y)) → minus(x, y)
plus(0, y) → y
plus(s(x), y) → plus(x, s(y))
plus(s(x), y) → s(plus(y, x))
zero(s(x)) → false
zero(0) → true
p(s(x)) → x
p(0) → 0
div(x, y) → quot(x, y, 0)
quot(s(x), s(y), z) → quot(minus(p(ack(0, x)), y), s(y), s(z))
quot(0, s(y), z) → z
ack(0, x) → s(x)
ack(0, x) → plus(x, s(0))
ack(s(x), 0) → ack(x, s(0))
ack(s(x), s(y)) → ack(x, ack(s(x), y))
↳ QTRS
↳ DependencyPairsProof
minus(minus(x, y), z) → minus(x, plus(y, z))
minus(0, y) → 0
minus(x, 0) → x
minus(s(x), s(y)) → minus(x, y)
plus(0, y) → y
plus(s(x), y) → plus(x, s(y))
plus(s(x), y) → s(plus(y, x))
zero(s(x)) → false
zero(0) → true
p(s(x)) → x
p(0) → 0
div(x, y) → quot(x, y, 0)
quot(s(x), s(y), z) → quot(minus(p(ack(0, x)), y), s(y), s(z))
quot(0, s(y), z) → z
ack(0, x) → s(x)
ack(0, x) → plus(x, s(0))
ack(s(x), 0) → ack(x, s(0))
ack(s(x), s(y)) → ack(x, ack(s(x), y))
ACK(s(x), 0) → ACK(x, s(0))
MINUS(minus(x, y), z) → PLUS(y, z)
ACK(s(x), s(y)) → ACK(x, ack(s(x), y))
QUOT(s(x), s(y), z) → ACK(0, x)
ACK(s(x), s(y)) → ACK(s(x), y)
MINUS(s(x), s(y)) → MINUS(x, y)
ACK(0, x) → PLUS(x, s(0))
QUOT(s(x), s(y), z) → QUOT(minus(p(ack(0, x)), y), s(y), s(z))
QUOT(s(x), s(y), z) → MINUS(p(ack(0, x)), y)
QUOT(s(x), s(y), z) → P(ack(0, x))
PLUS(s(x), y) → PLUS(x, s(y))
MINUS(minus(x, y), z) → MINUS(x, plus(y, z))
DIV(x, y) → QUOT(x, y, 0)
PLUS(s(x), y) → PLUS(y, x)
minus(minus(x, y), z) → minus(x, plus(y, z))
minus(0, y) → 0
minus(x, 0) → x
minus(s(x), s(y)) → minus(x, y)
plus(0, y) → y
plus(s(x), y) → plus(x, s(y))
plus(s(x), y) → s(plus(y, x))
zero(s(x)) → false
zero(0) → true
p(s(x)) → x
p(0) → 0
div(x, y) → quot(x, y, 0)
quot(s(x), s(y), z) → quot(minus(p(ack(0, x)), y), s(y), s(z))
quot(0, s(y), z) → z
ack(0, x) → s(x)
ack(0, x) → plus(x, s(0))
ack(s(x), 0) → ack(x, s(0))
ack(s(x), s(y)) → ack(x, ack(s(x), y))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
ACK(s(x), 0) → ACK(x, s(0))
MINUS(minus(x, y), z) → PLUS(y, z)
ACK(s(x), s(y)) → ACK(x, ack(s(x), y))
QUOT(s(x), s(y), z) → ACK(0, x)
ACK(s(x), s(y)) → ACK(s(x), y)
MINUS(s(x), s(y)) → MINUS(x, y)
ACK(0, x) → PLUS(x, s(0))
QUOT(s(x), s(y), z) → QUOT(minus(p(ack(0, x)), y), s(y), s(z))
QUOT(s(x), s(y), z) → MINUS(p(ack(0, x)), y)
QUOT(s(x), s(y), z) → P(ack(0, x))
PLUS(s(x), y) → PLUS(x, s(y))
MINUS(minus(x, y), z) → MINUS(x, plus(y, z))
DIV(x, y) → QUOT(x, y, 0)
PLUS(s(x), y) → PLUS(y, x)
minus(minus(x, y), z) → minus(x, plus(y, z))
minus(0, y) → 0
minus(x, 0) → x
minus(s(x), s(y)) → minus(x, y)
plus(0, y) → y
plus(s(x), y) → plus(x, s(y))
plus(s(x), y) → s(plus(y, x))
zero(s(x)) → false
zero(0) → true
p(s(x)) → x
p(0) → 0
div(x, y) → quot(x, y, 0)
quot(s(x), s(y), z) → quot(minus(p(ack(0, x)), y), s(y), s(z))
quot(0, s(y), z) → z
ack(0, x) → s(x)
ack(0, x) → plus(x, s(0))
ack(s(x), 0) → ack(x, s(0))
ack(s(x), s(y)) → ack(x, ack(s(x), y))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDP
↳ QDP
PLUS(s(x), y) → PLUS(x, s(y))
PLUS(s(x), y) → PLUS(y, x)
minus(minus(x, y), z) → minus(x, plus(y, z))
minus(0, y) → 0
minus(x, 0) → x
minus(s(x), s(y)) → minus(x, y)
plus(0, y) → y
plus(s(x), y) → plus(x, s(y))
plus(s(x), y) → s(plus(y, x))
zero(s(x)) → false
zero(0) → true
p(s(x)) → x
p(0) → 0
div(x, y) → quot(x, y, 0)
quot(s(x), s(y), z) → quot(minus(p(ack(0, x)), y), s(y), s(z))
quot(0, s(y), z) → z
ack(0, x) → s(x)
ack(0, x) → plus(x, s(0))
ack(s(x), 0) → ack(x, s(0))
ack(s(x), s(y)) → ack(x, ack(s(x), y))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
PLUS(s(x), y) → PLUS(y, x)
Used ordering: Polynomial interpretation [25,35]:
PLUS(s(x), y) → PLUS(x, s(y))
The value of delta used in the strict ordering is 16.
POL(PLUS(x1, x2)) = (4)x_1 + (4)x_2
POL(s(x1)) = 4 + x_1
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDP
↳ QDP
PLUS(s(x), y) → PLUS(x, s(y))
minus(minus(x, y), z) → minus(x, plus(y, z))
minus(0, y) → 0
minus(x, 0) → x
minus(s(x), s(y)) → minus(x, y)
plus(0, y) → y
plus(s(x), y) → plus(x, s(y))
plus(s(x), y) → s(plus(y, x))
zero(s(x)) → false
zero(0) → true
p(s(x)) → x
p(0) → 0
div(x, y) → quot(x, y, 0)
quot(s(x), s(y), z) → quot(minus(p(ack(0, x)), y), s(y), s(z))
quot(0, s(y), z) → z
ack(0, x) → s(x)
ack(0, x) → plus(x, s(0))
ack(s(x), 0) → ack(x, s(0))
ack(s(x), s(y)) → ack(x, ack(s(x), y))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
PLUS(s(x), y) → PLUS(x, s(y))
The value of delta used in the strict ordering is 4.
POL(PLUS(x1, x2)) = (4)x_1
POL(s(x1)) = 1 + x_1
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
↳ QDP
↳ QDP
minus(minus(x, y), z) → minus(x, plus(y, z))
minus(0, y) → 0
minus(x, 0) → x
minus(s(x), s(y)) → minus(x, y)
plus(0, y) → y
plus(s(x), y) → plus(x, s(y))
plus(s(x), y) → s(plus(y, x))
zero(s(x)) → false
zero(0) → true
p(s(x)) → x
p(0) → 0
div(x, y) → quot(x, y, 0)
quot(s(x), s(y), z) → quot(minus(p(ack(0, x)), y), s(y), s(z))
quot(0, s(y), z) → z
ack(0, x) → s(x)
ack(0, x) → plus(x, s(0))
ack(s(x), 0) → ack(x, s(0))
ack(s(x), s(y)) → ack(x, ack(s(x), y))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDP
ACK(s(x), 0) → ACK(x, s(0))
ACK(s(x), s(y)) → ACK(s(x), y)
ACK(s(x), s(y)) → ACK(x, ack(s(x), y))
minus(minus(x, y), z) → minus(x, plus(y, z))
minus(0, y) → 0
minus(x, 0) → x
minus(s(x), s(y)) → minus(x, y)
plus(0, y) → y
plus(s(x), y) → plus(x, s(y))
plus(s(x), y) → s(plus(y, x))
zero(s(x)) → false
zero(0) → true
p(s(x)) → x
p(0) → 0
div(x, y) → quot(x, y, 0)
quot(s(x), s(y), z) → quot(minus(p(ack(0, x)), y), s(y), s(z))
quot(0, s(y), z) → z
ack(0, x) → s(x)
ack(0, x) → plus(x, s(0))
ack(s(x), 0) → ack(x, s(0))
ack(s(x), s(y)) → ack(x, ack(s(x), y))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
ACK(s(x), 0) → ACK(x, s(0))
ACK(s(x), s(y)) → ACK(x, ack(s(x), y))
Used ordering: Polynomial interpretation [25,35]:
ACK(s(x), s(y)) → ACK(s(x), y)
The value of delta used in the strict ordering is 16.
POL(plus(x1, x2)) = 5/2 + x_1 + (3/2)x_2
POL(ACK(x1, x2)) = (4)x_1
POL(s(x1)) = 4 + (11/4)x_1
POL(0) = 1/2
POL(ack(x1, x2)) = 4 + (4)x_2
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDP
ACK(s(x), s(y)) → ACK(s(x), y)
minus(minus(x, y), z) → minus(x, plus(y, z))
minus(0, y) → 0
minus(x, 0) → x
minus(s(x), s(y)) → minus(x, y)
plus(0, y) → y
plus(s(x), y) → plus(x, s(y))
plus(s(x), y) → s(plus(y, x))
zero(s(x)) → false
zero(0) → true
p(s(x)) → x
p(0) → 0
div(x, y) → quot(x, y, 0)
quot(s(x), s(y), z) → quot(minus(p(ack(0, x)), y), s(y), s(z))
quot(0, s(y), z) → z
ack(0, x) → s(x)
ack(0, x) → plus(x, s(0))
ack(s(x), 0) → ack(x, s(0))
ack(s(x), s(y)) → ack(x, ack(s(x), y))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
ACK(s(x), s(y)) → ACK(s(x), y)
The value of delta used in the strict ordering is 4.
POL(ACK(x1, x2)) = (4)x_2
POL(s(x1)) = 1 + (4)x_1
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
↳ QDP
minus(minus(x, y), z) → minus(x, plus(y, z))
minus(0, y) → 0
minus(x, 0) → x
minus(s(x), s(y)) → minus(x, y)
plus(0, y) → y
plus(s(x), y) → plus(x, s(y))
plus(s(x), y) → s(plus(y, x))
zero(s(x)) → false
zero(0) → true
p(s(x)) → x
p(0) → 0
div(x, y) → quot(x, y, 0)
quot(s(x), s(y), z) → quot(minus(p(ack(0, x)), y), s(y), s(z))
quot(0, s(y), z) → z
ack(0, x) → s(x)
ack(0, x) → plus(x, s(0))
ack(s(x), 0) → ack(x, s(0))
ack(s(x), s(y)) → ack(x, ack(s(x), y))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
MINUS(s(x), s(y)) → MINUS(x, y)
MINUS(minus(x, y), z) → MINUS(x, plus(y, z))
minus(minus(x, y), z) → minus(x, plus(y, z))
minus(0, y) → 0
minus(x, 0) → x
minus(s(x), s(y)) → minus(x, y)
plus(0, y) → y
plus(s(x), y) → plus(x, s(y))
plus(s(x), y) → s(plus(y, x))
zero(s(x)) → false
zero(0) → true
p(s(x)) → x
p(0) → 0
div(x, y) → quot(x, y, 0)
quot(s(x), s(y), z) → quot(minus(p(ack(0, x)), y), s(y), s(z))
quot(0, s(y), z) → z
ack(0, x) → s(x)
ack(0, x) → plus(x, s(0))
ack(s(x), 0) → ack(x, s(0))
ack(s(x), s(y)) → ack(x, ack(s(x), y))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
MINUS(s(x), s(y)) → MINUS(x, y)
MINUS(minus(x, y), z) → MINUS(x, plus(y, z))
The value of delta used in the strict ordering is 16.
POL(plus(x1, x2)) = 2
POL(minus(x1, x2)) = 4 + (4)x_1 + (3)x_2
POL(MINUS(x1, x2)) = (4)x_1
POL(s(x1)) = 4 + x_1
POL(0) = 0
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
minus(minus(x, y), z) → minus(x, plus(y, z))
minus(0, y) → 0
minus(x, 0) → x
minus(s(x), s(y)) → minus(x, y)
plus(0, y) → y
plus(s(x), y) → plus(x, s(y))
plus(s(x), y) → s(plus(y, x))
zero(s(x)) → false
zero(0) → true
p(s(x)) → x
p(0) → 0
div(x, y) → quot(x, y, 0)
quot(s(x), s(y), z) → quot(minus(p(ack(0, x)), y), s(y), s(z))
quot(0, s(y), z) → z
ack(0, x) → s(x)
ack(0, x) → plus(x, s(0))
ack(s(x), 0) → ack(x, s(0))
ack(s(x), s(y)) → ack(x, ack(s(x), y))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
QUOT(s(x), s(y), z) → QUOT(minus(p(ack(0, x)), y), s(y), s(z))
minus(minus(x, y), z) → minus(x, plus(y, z))
minus(0, y) → 0
minus(x, 0) → x
minus(s(x), s(y)) → minus(x, y)
plus(0, y) → y
plus(s(x), y) → plus(x, s(y))
plus(s(x), y) → s(plus(y, x))
zero(s(x)) → false
zero(0) → true
p(s(x)) → x
p(0) → 0
div(x, y) → quot(x, y, 0)
quot(s(x), s(y), z) → quot(minus(p(ack(0, x)), y), s(y), s(z))
quot(0, s(y), z) → z
ack(0, x) → s(x)
ack(0, x) → plus(x, s(0))
ack(s(x), 0) → ack(x, s(0))
ack(s(x), s(y)) → ack(x, ack(s(x), y))